<?php
/**
* Controlador Numero Voip
*  @filesource
 * @author			Marcos Rodrigo
 * @copyright		Copyright 2009 M2R
 * @package			broffices
 * @subpackage		broffices.application.controllers
 * @version			1.0
*/

class NumeroVoipController extends Zend_Controller_Action
{
	
	private $intTamPag;
	
	/**
	 * Este metodo sera executado sempre que a classe for instanciada,
	 * depois do construtor.
	 * Faz o carregamento das classes que serao usadas pelo controlador.
	 * @return void
	 */
	public function init()
	{
		Zend_Loader::loadClass('NumeroVoip');
		
		// inicializando variaveis com valor padrao
		$this->intTamPag = 30;
	}

	/**
	 * Metodo que mostra a pagina inicial
	 * @return void
	 */
	public function indexAction()
	{
		// exibe tela
		$this->montaTela("numero-voip/bodyindex.tpl", 
							array(), 
							false);
	}
	
	public function recuperaNumerosVoipAction()
	{

		$get = Zend_Registry::get('get');
		$codContaVoip = $get->cod_contavoip;
		$bln_alteracao_contratutal = $get->bln_alteracao_contratutal;
		
		$arrNumeroVoip = array();
		$arrIdNumeroVoip = array();
		$blnNumeros = 0;

		if(!empty($codContaVoip)){
			$tblNumeroVoip = new NumeroVoip();
			$rsNumeroVoip = $tblNumeroVoip->busca(array("contavoip_id="=>$codContaVoip, "bln_ativo="=>1),
												  array("id"));

			$arrTemp = $rsNumeroVoip->toArray();
			
			$blnNumeros = count($arrTemp);
			for ($i=0; $i<sizeof($arrTemp); $i++)
			{
				//$arrNumeroVoip[$arrTemp[$i]['id']] = "(".substr($arrTemp[$i]['vhr_telefone'],0,2).")".substr($arrTemp[$i]['vhr_telefone'],2,4)."-".substr($arrTemp[$i]['vhr_telefone'],4,4);
				$arrNumeroVoip[$arrTemp[$i]['id']] = aplicaMascara($arrTemp[$i]['vhr_telefone'],"(99)9999-9999");
				$arrIdNumeroVoip[$i] = $arrTemp[$i]['id'];
			}
			
		}

		//xd($arrNumeroVoip);
		$this->montaTela("numerovoip/checkboxnumerosvoip.tpl", 
							array("numerosvoip"=>$arrNumeroVoip,
								  "codigos"=>$arrIdNumeroVoip,
								  "qtde_numeros"=>$blnNumeros,
								  "bln_alteracao_contratutal"=>$bln_alteracao_contratutal),
							false);
	}
	
/**
	 * Monta a tela de retorno ao usuario
	 * @param string $corpo - arquivo tpl do corpo
	 * @param array $dados - array com os dados a serem inseridos na tela, no seguinte formato "nome"=>"valor"
	 * @param boolean $exibeHeader - true ou false para exibir header, menu e rodape 
	 * @return void
	 */
	public function montaTela($corpo, $dados=array(), $exibeHeader=true)
	{
		// iniciando view
		$view = Zend_Registry::get('view');
		// setando corpo
		$view->assign('_corpo',$corpo);

		// pegando variaveis globais do site
		$_site = Zend_Registry::get("site");
		// setando variaveis globais ao template
		$view->assign('_site', $_site);
		
		// percorrendo array de dados e inserindo no template
		foreach ($dados as $dado=>$valor)
		{
			$view->assign($dado, $valor);
		}
		
		// define o template master
		$tplLayout = $_site["layout"];
		// se exibirHeader for verdadeiro
		if ($exibeHeader)
		{
			// adiciona cabecalho
			$view->assign('_cabecalho', $_site["header"]);
			// adiciona menu
			$view->assign('_menu', $_site["menu"]);
			// adiciona rodape
			$view->assign('_rodape', $_site["footer"]);
		}
		// se exibirHeader for falso
		else
		{
			// define template master sem cabecalho
			$tplLayout = $_site["layout_sem_header"];
		}
		// retorna o tempalte master, com corpo e variaveis setadas
		$view->output($tplLayout);
	}
	
}
